package com.ydd.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ydd.dto.*;
import com.ydd.entity.SysUser;
import com.ydd.result.HMPageResult;
import com.ydd.result.PageResult;
import com.ydd.vo.UserRoleVO;
import com.ydd.vo.UserRowInfoVO;

/**
 * <p>
 * 用户表 服务类
 * </p>
 *
 * @author hgz
 * @since 2023-05-30
 */
public interface ISysUserService extends IService<SysUser> {

    /**
     * 用户登录
     * @param userLoginDTO
     * @return
     */
    SysUser login(SysUserLoginDTO userLoginDTO);

    /**
     * 用户登录
     * @param userLoginDTO
     * @return
     */
    SysUser login(UserLoginDTO userLoginDTO);

    /**
     * 用户列表-分页
     *
     * @param sysUserDTO
     * @return
     */
    HMPageResult<UserRoleVO> pageQuery(SysUserDTO sysUserDTO);

    /**
     * 管理员添加
     * @param sysUserAddDTO
     */
    void addUser(SysUserAddDTO sysUserAddDTO);


    /**
     * 管理员删除
     * @param id
     */
    void SysUserdelect(String id);


    /**
     * 管理员详情
     * @return
     */
    UserRowInfoVO UserRowInfo(String id);


    /**
     * 管理员修改
     * @param sysUpdateDTO
     */
    void UserUpdate(SysUpdateDTO sysUpdateDTO);
}
